// pages/certificate_new/index.js
const app = getApp()
Page({

  /**
   * 页面的初始数据
   */
  data: {
    shareImage: '',
    imagsSrc: ''
  },

  /**
   * 生命周期函数--监听页面加载
   */
  onLoad(options) {
    const _this = this; 
    var id = options.id
    var empinfo = wx.getStorageSync('empinfo')
    app.formPost('/wx/test/get-transcript-result',{
      transcriptId: id,
      employeeId: empinfo.employeeId,
    }).then(res=>{
        if(res.code == 200){
          //console.log(res.transcriptInfo)
          if(res.transcriptInfo.excamMark >= res.transcriptInfo.passScore){
            wx.showLoading({
              title: '绘制证书中',
              mask: true
            })
            //分数显示位置1：
            //var fenshu = res.transcriptInfo.excamMark+'';
            //var content_zong = ""+res.transcriptInfo.employeeName+"同志：参加"+res.transcriptInfo.companyName+"《"+res.transcriptInfo.testpapeName+"》网络培训，经考核合格，准予结业。";
            var testpapeNameLen = res.transcriptInfo.testpapeName.length;
            var testpapeName = res.transcriptInfo.testpapeName.substring(0,testpapeNameLen-2);
            var content_zong = ""+res.transcriptInfo.employeeName+"同志：参加"+testpapeName+"，经考核合格，准予结业。";
            var showDate = res.transcriptInfo.certificateDate+'';
            //console.log('内容'+content_zong)
            //console.log('内容长度：'+content_zong.length)
            var content1 = '';
            var content2 = '';
            var content3 = '';
            var content4 = '';
            var content5 = '';
            
            if(content_zong.length <= 15){
              //console.log('111')
              content1 = content_zong;
            }else if(content_zong.length > 15 && content_zong.length <= 35){
              //console.log('222')
              content1= content_zong.substring(0,15);
              content2= content_zong.substring(15,34);
            }else if(content_zong.length > 34 && content_zong.length <= 53){
              //console.log('333')
              content1= content_zong.substring(0,15);
              //console.log('content1内容长度：'+content1.length)
              content2= content_zong.substring(15,34);
              //console.log('content2内容长度：'+content2.length)
              content3= content_zong.substring(34,53);
              //console.log('content3内容长度：'+content3.length)
            }else if(content_zong.length > 53 && content_zong.length <= 72){
              //console.log('444')
              content1= content_zong.substring(0,15);
              content2= content_zong.substring(15,34);
              content3= content_zong.substring(34,53);
              content4= content_zong.substring(53,72);
            }else if(content_zong.length > 72 && content_zong.length <= 91){
              //console.log('444')
              content1= content_zong.substring(0,15);
              content2= content_zong.substring(15,34);
              content3= content_zong.substring(34,53);
              content4= content_zong.substring(53,72);
              content5= content_zong.substring(73,91);
            }
            wx.createSelectorQuery()
            .select('#myCanvas') // 在 WXML 中填入的 id
            .fields({ node: true, size: true })
            .exec((res) => {
                // Canvas 对象
                const canvas = res[0].node
                // 渲染上下文
                const ctx = canvas.getContext('2d')
                // Canvas 画布的实际绘制宽高
                const width = res[0].width
                const height = res[0].height

                // 初始化画布大小
                const dpr = wx.getWindowInfo().pixelRatio
                canvas.width = width * dpr
                canvas.height = height * dpr
                ctx.scale(dpr, dpr)

                // 图片对象
                const image = canvas.createImage()
                // 图片对象
                const imags = canvas.createImage()
                
                //imags.src = '';
                // 图片加载完成回调1
                image.onload = () => {
                    // 将背景图片绘制到 canvas 上
                    ctx.drawImage(image, 0, 0,300,450)
                    // 将印章图片绘制到 canvas 上
                    ctx.drawImage(imags, 165, 280,55,55)
                    //文字
                    ctx.font = '15px fontfamily';
                    ctx.fillText(content1, 50, 170)
                    ctx.fillText(content2, 29, 200)
                    ctx.fillText(content3, 29, 230)
                    ctx.fillText(content4, 29, 260)
                    ctx.fillText(content5, 29, 290)
                    ctx.font = '10px fontfamily';
                    ctx.fillText('鸿谦科技有限公司', 150, 300)
                    ctx.fillText(showDate, 130, 320)
                    
                    setTimeout(()=>{
                      wx.canvasToTempFilePath({
                          canvas: canvas,
                          success: res => {
                            // 生成的图片临时文件路径
                            _this.setData({
                              shareImage : res.tempFilePath
                            }) 
                            //关闭绘制提示
                            wx.hideLoading()
                          },
                      })
                    },1000)
                }
                // 设置背景图片src
                image.src = 'https://exam.hq0311.com/OTA/20250921/0df92f00-f00d-498d-bd8f-3677843bfa58.jpg';
                // 设置印章图片src _this.imagsSrc
                imags.src = '../../images/gongzhang.png'
            })
        }else{
          wx.showModal({
            title: '提示',
            content: '很遗憾，您没有通过考试！',
            cancelText: "返回任务",
            confirmText: "返回列表",
            success(res) {
              if (res.confirm) {
                wx.reLaunch({
                  url: "/pages/home/index"
                });
              } else if (res.cancel) {
                wx.reLaunch({
                  url: "/pages/tiku/fenlei"
                });
              }
            }
          })
        }
      }
    }).catch(e => {
      wx.showModal({
        title: e
      })
    })
  },
  eventSave() {
    //console.log('执行证书下载')
    const _this = this; 
    wx.getSetting({
      success (res) {
        if (res.authSetting['scope.writePhotosAlbum']) {
          // 已获得存储相册授权
          wx.saveImageToPhotosAlbum({
            filePath: _this.data.shareImage,
            success(res1) {
              wx.showToast({
                title: '保存证书成功',
                icon: 'success',
                duration: 2000
              })
              wx.reLaunch({
                url: "/pages/tiku/fenlei"
              });
            }
          })
        }else if(res.authSetting['scope.writePhotosAlbum'] === undefined){
          // 第一次运行，授权未定义，可以直接保存，系统会一次性询问用户权限
          wx.saveImageToPhotosAlbum({
            filePath: _this.data.shareImage,
            success(res1) {
              wx.showToast({
                title: '保存证书成功',
                icon: 'success',
                duration: 2000
              })
              wx.reLaunch({
                url: "/pages/tiku/fenlei"
              });
            }
          })
        }else{
          // 未获得存储相册授权
          wx.showModal({
            title: '提示',
            content: '需要您授权保存相册',
            showCancel: false,
            success: () => {
              wx.openSetting({
                success(settingdata) {
                //再进行图片下载操作
                    // 已获得存储相册授权
                  wx.saveImageToPhotosAlbum({
                    filePath: _this.data.shareImage,
                    success(res1) {
                      wx.showToast({
                        title: '保存证书成功',
                        icon: 'success',
                        duration: 2000
                      })
                      wx.reLaunch({
                        url: "/pages/tiku/fenlei"
                      });
                    }
                  })
                }
              })
            }
          })
        }
      }
    })
  },
  // saveImage(filePath){
  //   wx.saveImageToPhotosAlbum({
  //     filePath: filePath,
  //     success(res) {
  //       wx.showToast({
  //         title: '保存证书成功',
  //         icon: 'success',
  //         duration: 2000
  //       })
  //     },
  //     fail: (err) =>{
  //       this.showToast('保存失败，请稍后重试');
  //     }
  //   })
  // },
  // 微信提示方法
  showToast(title) {
    wx.showToast({
      title: title
    });
  },
  
  /**
   * 生命周期函数--监听页面初次渲染完成
   */
  onReady() {

  },

  /**
   * 生命周期函数--监听页面显示
   */
  onShow() {

  },

  /**
   * 生命周期函数--监听页面隐藏
   */
  onHide() {

  },

  /**
   * 生命周期函数--监听页面卸载
   */
  onUnload() {

  },

  /**
   * 页面相关事件处理函数--监听用户下拉动作
   */
  onPullDownRefresh() {

  },

  /**
   * 页面上拉触底事件的处理函数
   */
  onReachBottom() {

  },

  /**
   * 用户点击右上角分享
   */
  onShareAppMessage() {

  }
})